﻿<!DOCTYPE HTML>
<html lang="zh">
<head>
<title>#安装键盘钩 - 语法 &amp; 使用 | AutoHotkey v2</title>
<meta name="description" content="The #安装键盘钩 directive forces the unconditional installation of the keyboard hook." />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="../static/theme.css" rel="stylesheet" type="text/css" />
<script src="../static/content.js" type="text/javascript"></script>
<script type="text/javascript">$(function(){0<=window.navigator.userAgent.toLowerCase().indexOf("ucbrowser")&&CaoNiMaDeUc()})</script>
</head>
<body>

<h1>#安装键盘钩</h1>

<p>强制无条件安装键盘钩子.</p>

<pre class="Syntax"><span class="func">#安装键盘钩</span></pre>
<h2 id="Remarks">备注</h2>
<p>键盘钩子监视击键, 以便激活<a href="../Hotstrings.htm">热字串</a>和任何  RegisterHotkey(操作系统内置的函数) 不支持的键盘<a href="../Hotkeys.htm">热键</a>. 它还支持其他一些特性, 如 <a href="InputHook.htm">输入钩</a> 函数.</p>
<p>AutoHotkey 不会无条件安装键盘和鼠标钩子, 因为它们合起来至少占用 500 KB 的内存. 因此, 通常仅在脚本包含以下内容之一时才会安装键盘钩子: 1) <a href="../Hotstrings.htm">热字串</a>; 2) 一个或多个需要键盘钩子的<a href="../Hotkeys.htm">热键</a>(大多数不需要); 3) <a href="SetNumScrollCapsLockState.htm">SetCaps/Scroll/NumLock AlwaysOn/AlwaysOff</a>; 4) 激活 <a href="InputHook.htm">Input 钩子</a>.</p>
<p>与之相比, 使用 #安装键盘钩 指令会无条件安装键盘钩子, 这可能有助于允许 <a href="KeyHistory.htm">按键记录</a> 显示最近的 20 次键击(用于调试目的), 或者避免使用 <a href="_HotkeyModifierTimeout.htm">#修饰热键超时</a>.</p>
<p>你可以通过 <a href="KeyHistory.htm">按键记录</a> 函数或菜单项来判断脚本是否使用了钩子. 你可以通过 <a href="ListHotkeys.htm">热键列表</a> 函数或菜单项来判断哪个热键使用了钩子.</p>

<h2 id="Related">相关</h2>
<p><a href="_InstallMouseHook.htm">#安装鼠标钩</a>, <a href="_UseHook.htm">#强制使用钩</a>, <a href="Hotkey.htm">热键</a>, <a href="InputHook.htm">输入钩</a>, <a href="KeyHistory.htm">按键记录</a>, <a href="../Hotstrings.htm">热字串</a>, <a href="GetKeyState.htm">获取按键状态</a>, <a href="KeyWait.htm">等待按键</a></p>
<h2 id="Examples">示例</h2>
<div class="ex" id="ExBasic">
<p><a href="#ExBasic">#1</a></p>
<pre>#安装键盘钩</pre>
</div>

</body>
</html>